package com.hnevc.caoliuye;

/**
 *
 * 多态 对象的类型转换
 * 不能通过父类变量去调用子类中特有的方法
 */
public class Example01 {
    public static void main(String[] args) {
        Cat cat =new Cat();
        animalShout(cat);
    }
    public static void animalShout(Animal animal){
        Cat cat = (Cat) animal;
        cat.shout();
        cat.sleep();
    }
}
//定义接口
interface Animal{
    void shout();
}
//定义自类Cat 实现Animal接口
class Cat implements Animal{
    @Override
    public void shout() {
        System.out.println("喵喵~~~");
    }
    //Cat类中特有方法
    public void sleep(){
        System.out.println("猫在睡觉");
    }
}